package com.terracloud.server.common.data.log;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

@Setter
@Getter
@Schema(description = "平台日志统计信息")
public class PlatformStatistics {

    @Schema(description = "今日业务操作数量")
    private long todayBusinessOperationCount;

    @Schema(description = "敏感操作记录数")
    private long sensitiveOperationCount;

    @Schema(description = "权限变更操作占比 (%)")
    private double permissionChangeRatio;

    @Schema(description = "未处理异常数")
    private long unprocessedExceptionCount;

    @Schema(description = "严重级别异常数")
    private long criticalExceptionCount;

    @Schema(description = "活跃用户操作数量")
    private long activeUserOperationCount;

    public PlatformStatistics(long todayBusinessOperationCount, long sensitiveOperationCount,
                              double permissionChangeRatio, long unprocessedExceptionCount,
                              long criticalExceptionCount, long activeUserOperationCount) {
        this.todayBusinessOperationCount = todayBusinessOperationCount;
        this.sensitiveOperationCount = sensitiveOperationCount;
        this.permissionChangeRatio = permissionChangeRatio;
        this.unprocessedExceptionCount = unprocessedExceptionCount;
        this.criticalExceptionCount = criticalExceptionCount;
        this.activeUserOperationCount = activeUserOperationCount;
    }

}